package lambda;

public class Test3 {
    public static void main(String[] args) {
        /*方案1：创建接口实现类对象调用*/
        Fruit f = new FruitImpl();
        //6.2调用本类的getFruit(),并把刚刚创建的多态对象传入
        getFruit(f);

        /*方案2：使用匿名内部类的方式来调用*/
        getFruit(new Fruit() {
            @Override
            public void getkind(String s) {
                System.out.println("参数s是："+s);
                System.out.println("我是一个大橙子~");
            }
        });

          /*方案3:使用Lambda表达式来完成*/
        getFruit( (String s) -> {
            System.out.println("参数s是："+s);
            System.out.println("我是一颗大草莓");
        });
    }
    public static void getFruit(Fruit f){
        f.getkind("猜猜我是什么水果？");
    }
}
interface Fruit{
    void getkind(String s);
}
class FruitImpl implements Fruit{

    @Override
    public void getkind(String s) {
        System.out.println("参数s是："+s);
        System.out.println("我是一个大桃子~");
    }
}